#include "stdafx.h"
#include "CombatDef.h"
#include "Affector.h"
#include "GlobalEnumManager.h"
void GlobalEnumManager::EnumerateEnums( std::vector<const EnumBase*>& vEnums )
{
	vEnums.clear();
	std::map<std::string,const EnumBase*>::iterator it= m_mEnums.begin();
	for(;it!=m_mEnums.end();it++)
	{
		vEnums.push_back(it->second);
	}
}

GlobalEnumManager::GlobalEnumManager()
{
	RegisterEnum<ECardStorage,ECardStorage_Num>();
	RegisterEnum<EAffactor,EAffector_NUM>();
	RegisterEnum<ETriple,eTriple_Num>();
	RegisterEnum<ECombatEvent,eECombatEvent_Num>();
	RegisterEnum<ESelectRange,ESelectRange_Num>();
	RegisterEnum<ERuleSort,ERuleSort_Num>();
	RegisterEnum<ERuleSelectOrder,ERuleSelectOrder_Num>();
	RegisterEnum<ECompare,eCompare_Num>();
	RegisterEnum<EDamageType,EDamageType_Num>();
	RegisterEnum<ECardRace,eCardRace_Num>();
	RegisterEnum<ECombatObj,ECombatObj_Num>();
	RegisterEnum<EEstimateResult,eEstimateResult_Num>();
	RegisterEnum<EShopFunc,EShopFunc_Num>();
	RegisterEnum<EShopMoney,EShopMoney_Num>();
	RegisterEnum<EPerWeekDay,EPerWeekDay_Num>();
	RegisterEnum<EShopFlag,eShopFlag_Num>();
	RegisterEnum<ERuneRace,eRuneRace_Num>();
	RegisterEnum<EBuffCountTimeMod,eBuffCountTimeMod_Num>();
	RegisterEnum<EValueModifyer,eBuffModifyer_Num>();
	RegisterEnum<ERewardItemType,eERewardItemType_NUM>();
	RegisterEnum<ECalBaselValueType,ECalBaselValueType_NUM>();
	RegisterEnum<EEventCounter,EEventCounter_NUM>();
	RegisterEnum<EOperator,eOperator_NUM>();
	RegisterEnum<EEvaluationType,eEvaluation_NUM>();
	RegisterEnum<ECardReorderType,ECardReorderType_Num>();
	RegisterEnum<ELogicOpt,ELogicOpt_Num>();
	RegisterEnum<ECombatSide,ECombatSide_NUM>();
	RegisterEnum<EDropCounter,EDropCounter_NUM>();
	RegisterEnum<EStartOrderMode,EStartOrderMode_NUM>();
	RegisterEnum<EDailyQuestItemType,EDailyQuestItemType_NUM>();
	RegisterEnum<EGameEvent,EGameEvent_NUM>();
	RegisterEnum<EAchiveCountOPt,EAchiveCountOPt_NUM>();
	RegisterEnum<EUsage,EUsage_NUM>();
	RegisterEnum<EHeroUsage,EHeroUsage_NUM>();
	RegisterEnum<E_DailyTaskType,E_DailyTaskType_NUM>();
	RegisterEnum<EHour,EHour_NUM>();
	
	
}